Hamlib  4.5~git
riglist.h
1 /*
2  * Hamlib Interface - list of known rigs
3  * Copyright (c) 2000-2003 by Frank Singleton
4  * Copyright (c) 2000-2015 by Stephane Fillod
5  *
6  *
7  * This library is free software; you can redistribute it and/or
8  * modify it under the terms of the GNU Lesser General Public
9  * License as published by the Free Software Foundation; either
10  * version 2.1 of the License, or (at your option) any later version.
11  *
12  * This library is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15  * Lesser General Public License for more details.
16  *
17  * You should have received a copy of the GNU Lesser General Public
18  * License along with this library; if not, write to the Free Software
19  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
20  *
21  */
22 
23 #ifndef _RIGLIST_H
24 #define _RIGLIST_H 1
25 
27 
28 // The rig model number is designed to fit in a 32-bit int
29 // As of 2020-02-18 we have 33 backends defined
30 // With a max of 1000 models per backend we get total a model number range of 1001-33001
31 // This MAX was 100 prior to 2020-02-18 and Icom was close to running out of the 100 range
32 #define MAX_MODELS_PER_BACKEND 1000
33 #define RIG_MAKE_MODEL(a,b) ((a)*MAX_MODELS_PER_BACKEND+(b))
34 #define RIG_BACKEND_NUM(a) ((a)/MAX_MODELS_PER_BACKEND)
35 
52 #define RIG_MODEL_NONE 0
53 
65 #define RIG_DUMMY 0
66 #define RIG_BACKEND_DUMMY "dummy"
67 #define RIG_MODEL_DUMMY RIG_MAKE_MODEL(RIG_DUMMY, 1)
68 #define RIG_MODEL_NETRIGCTL RIG_MAKE_MODEL(RIG_DUMMY, 2)
69 #define RIG_MODEL_ARMSTRONG RIG_MAKE_MODEL(RIG_DUMMY, 3)
70 #define RIG_MODEL_FLRIG RIG_MAKE_MODEL(RIG_DUMMY, 4)
71 #define RIG_MODEL_TRXMANAGER_RIG RIG_MAKE_MODEL(RIG_DUMMY, 5)
72 #define RIG_MODEL_DUMMY_NOVFO RIG_MAKE_MODEL(RIG_DUMMY, 6)
73 #define RIG_MODEL_TCI1X RIG_MAKE_MODEL(RIG_DUMMY, 7)
74 
75 
76 /*
77  * Yaesu
78  */
79 #define RIG_YAESU 1
80 #define RIG_BACKEND_YAESU "yaesu"
81 #define RIG_MODEL_FT847 RIG_MAKE_MODEL(RIG_YAESU, 1)
82 #define RIG_MODEL_FT1000 RIG_MAKE_MODEL(RIG_YAESU, 2)
83 #define RIG_MODEL_FT1000D RIG_MAKE_MODEL(RIG_YAESU, 3)
84 #define RIG_MODEL_FT1000MPMKV RIG_MAKE_MODEL(RIG_YAESU, 4)
85 #define RIG_MODEL_FT747 RIG_MAKE_MODEL(RIG_YAESU, 5)
86 #define RIG_MODEL_FT757 RIG_MAKE_MODEL(RIG_YAESU, 6)
87 #define RIG_MODEL_FT757GXII RIG_MAKE_MODEL(RIG_YAESU, 7)
88 #define RIG_MODEL_FT575 RIG_MAKE_MODEL(RIG_YAESU, 8)
89 #define RIG_MODEL_FT767 RIG_MAKE_MODEL(RIG_YAESU, 9)
90 #define RIG_MODEL_FT736R RIG_MAKE_MODEL(RIG_YAESU, 10)
91 #define RIG_MODEL_FT840 RIG_MAKE_MODEL(RIG_YAESU, 11)
92 #define RIG_MODEL_FT820 RIG_MAKE_MODEL(RIG_YAESU, 12)
93 #define RIG_MODEL_FT900 RIG_MAKE_MODEL(RIG_YAESU, 13)
94 #define RIG_MODEL_FT920 RIG_MAKE_MODEL(RIG_YAESU, 14)
95 #define RIG_MODEL_FT890 RIG_MAKE_MODEL(RIG_YAESU, 15)
96 #define RIG_MODEL_FT990 RIG_MAKE_MODEL(RIG_YAESU, 16)
97 #define RIG_MODEL_FRG100 RIG_MAKE_MODEL(RIG_YAESU, 17)
98 #define RIG_MODEL_FRG9600 RIG_MAKE_MODEL(RIG_YAESU, 18)
99 #define RIG_MODEL_FRG8800 RIG_MAKE_MODEL(RIG_YAESU, 19)
100 #define RIG_MODEL_FT817 RIG_MAKE_MODEL(RIG_YAESU, 20)
101 #define RIG_MODEL_FT100 RIG_MAKE_MODEL(RIG_YAESU, 21)
102 #define RIG_MODEL_FT857 RIG_MAKE_MODEL(RIG_YAESU, 22)
103 #define RIG_MODEL_FT897 RIG_MAKE_MODEL(RIG_YAESU, 23)
104 #define RIG_MODEL_FT1000MP RIG_MAKE_MODEL(RIG_YAESU, 24)
105 #define RIG_MODEL_FT1000MPMKVFLD RIG_MAKE_MODEL(RIG_YAESU, 25)
106 #define RIG_MODEL_VR5000 RIG_MAKE_MODEL(RIG_YAESU, 26)
107 #define RIG_MODEL_FT450 RIG_MAKE_MODEL(RIG_YAESU, 27)
108 #define RIG_MODEL_FT950 RIG_MAKE_MODEL(RIG_YAESU, 28)
109 #define RIG_MODEL_FT2000 RIG_MAKE_MODEL(RIG_YAESU, 29)
110 #define RIG_MODEL_FT9000 RIG_MAKE_MODEL(RIG_YAESU, 30)
111 #define RIG_MODEL_FT980 RIG_MAKE_MODEL(RIG_YAESU, 31)
112 #define RIG_MODEL_FTDX5000 RIG_MAKE_MODEL(RIG_YAESU, 32)
113 #define RIG_MODEL_VX1700 RIG_MAKE_MODEL(RIG_YAESU, 33)
114 #define RIG_MODEL_FTDX1200 RIG_MAKE_MODEL(RIG_YAESU, 34)
115 #define RIG_MODEL_FT991 RIG_MAKE_MODEL(RIG_YAESU, 35)
116 #define RIG_MODEL_FT891 RIG_MAKE_MODEL(RIG_YAESU, 36)
117 #define RIG_MODEL_FTDX3000 RIG_MAKE_MODEL(RIG_YAESU, 37)
118 #define RIG_MODEL_FT847UNI RIG_MAKE_MODEL(RIG_YAESU, 38)
119 #define RIG_MODEL_FT600 RIG_MAKE_MODEL(RIG_YAESU, 39)
120 #define RIG_MODEL_FTDX101D RIG_MAKE_MODEL(RIG_YAESU, 40)
121 #define RIG_MODEL_FT818 RIG_MAKE_MODEL(RIG_YAESU, 41)
122 #define RIG_MODEL_FTDX10 RIG_MAKE_MODEL(RIG_YAESU, 42)
123 #define RIG_MODEL_FT897D RIG_MAKE_MODEL(RIG_YAESU, 43)
124 #define RIG_MODEL_FTDX101MP RIG_MAKE_MODEL(RIG_YAESU, 44)
125 #define RIG_MODEL_MCHFQRP RIG_MAKE_MODEL(RIG_YAESU, 45)
126 
127 
128 /*
129  * Kenwood
130  */
131 #define RIG_KENWOOD 2
132 #define RIG_BACKEND_KENWOOD "kenwood"
133 #define RIG_MODEL_TS50 RIG_MAKE_MODEL(RIG_KENWOOD, 1)
134 #define RIG_MODEL_TS440 RIG_MAKE_MODEL(RIG_KENWOOD, 2)
135 #define RIG_MODEL_TS450S RIG_MAKE_MODEL(RIG_KENWOOD, 3)
136 #define RIG_MODEL_TS570D RIG_MAKE_MODEL(RIG_KENWOOD, 4)
137 #define RIG_MODEL_TS690S RIG_MAKE_MODEL(RIG_KENWOOD, 5)
138 #define RIG_MODEL_TS711 RIG_MAKE_MODEL(RIG_KENWOOD, 6)
139 #define RIG_MODEL_TS790 RIG_MAKE_MODEL(RIG_KENWOOD, 7)
140 #define RIG_MODEL_TS811 RIG_MAKE_MODEL(RIG_KENWOOD, 8)
141 #define RIG_MODEL_TS850 RIG_MAKE_MODEL(RIG_KENWOOD, 9)
142 #define RIG_MODEL_TS870S RIG_MAKE_MODEL(RIG_KENWOOD, 10)
143 #define RIG_MODEL_TS940 RIG_MAKE_MODEL(RIG_KENWOOD, 11)
144 #define RIG_MODEL_TS950S RIG_MAKE_MODEL(RIG_KENWOOD, 12)
145 #define RIG_MODEL_TS950SDX RIG_MAKE_MODEL(RIG_KENWOOD, 13)
146 #define RIG_MODEL_TS2000 RIG_MAKE_MODEL(RIG_KENWOOD, 14)
147 #define RIG_MODEL_R5000 RIG_MAKE_MODEL(RIG_KENWOOD, 15)
148 #define RIG_MODEL_TS570S RIG_MAKE_MODEL(RIG_KENWOOD, 16)
149 #define RIG_MODEL_THD7A RIG_MAKE_MODEL(RIG_KENWOOD, 17)
150 #define RIG_MODEL_THD7AG RIG_MAKE_MODEL(RIG_KENWOOD, 18)
151 #define RIG_MODEL_THF6A RIG_MAKE_MODEL(RIG_KENWOOD, 19)
152 #define RIG_MODEL_THF7E RIG_MAKE_MODEL(RIG_KENWOOD, 20)
153 #define RIG_MODEL_K2 RIG_MAKE_MODEL(RIG_KENWOOD, 21)
154 #define RIG_MODEL_TS930 RIG_MAKE_MODEL(RIG_KENWOOD, 22)
155 #define RIG_MODEL_THG71 RIG_MAKE_MODEL(RIG_KENWOOD, 23)
156 #define RIG_MODEL_TS680S RIG_MAKE_MODEL(RIG_KENWOOD, 24)
157 #define RIG_MODEL_TS140S RIG_MAKE_MODEL(RIG_KENWOOD, 25)
158 #define RIG_MODEL_TMD700 RIG_MAKE_MODEL(RIG_KENWOOD, 26)
159 #define RIG_MODEL_TMV7 RIG_MAKE_MODEL(RIG_KENWOOD, 27)
160 #define RIG_MODEL_TS480 RIG_MAKE_MODEL(RIG_KENWOOD, 28)
161 #define RIG_MODEL_K3 RIG_MAKE_MODEL(RIG_KENWOOD, 29)
162 #define RIG_MODEL_TRC80 RIG_MAKE_MODEL(RIG_KENWOOD, 30)
163 #define RIG_MODEL_TS590S RIG_MAKE_MODEL(RIG_KENWOOD, 31)
164 #define RIG_MODEL_TRANSFOX RIG_MAKE_MODEL(RIG_KENWOOD, 32) /* SigFox Transfox */
165 #define RIG_MODEL_THD72A RIG_MAKE_MODEL(RIG_KENWOOD, 33)
166 #define RIG_MODEL_TMD710 RIG_MAKE_MODEL(RIG_KENWOOD, 34)
167 #define RIG_MODEL_TMV71 RIG_MAKE_MODEL(RIG_KENWOOD, 35)
168 #define RIG_MODEL_F6K RIG_MAKE_MODEL(RIG_KENWOOD, 36) /* Flex 6000 Series */
169 #define RIG_MODEL_TS590SG RIG_MAKE_MODEL(RIG_KENWOOD, 37)
170 #define RIG_MODEL_XG3 RIG_MAKE_MODEL(RIG_KENWOOD, 38) /* Elecraft XG-3 signal generator */
171 #define RIG_MODEL_TS990S RIG_MAKE_MODEL(RIG_KENWOOD, 39)
172 #define RIG_MODEL_HPSDR RIG_MAKE_MODEL(RIG_KENWOOD, 40) /* OpenHPSDR, PiHPSDR */
173 #define RIG_MODEL_TS890S RIG_MAKE_MODEL(RIG_KENWOOD, 41)
174 #define RIG_MODEL_THD74 RIG_MAKE_MODEL(RIG_KENWOOD, 42)
175 #define RIG_MODEL_K3S RIG_MAKE_MODEL(RIG_KENWOOD, 43)
176 #define RIG_MODEL_KX2 RIG_MAKE_MODEL(RIG_KENWOOD, 44)
177 #define RIG_MODEL_KX3 RIG_MAKE_MODEL(RIG_KENWOOD, 45)
178 #define RIG_MODEL_PT8000A RIG_MAKE_MODEL(RIG_KENWOOD, 46)
179 #define RIG_MODEL_K4 RIG_MAKE_MODEL(RIG_KENWOOD, 47)
180 #define RIG_MODEL_POWERSDR RIG_MAKE_MODEL(RIG_KENWOOD, 48)
181 #define RIG_MODEL_MALACHITE RIG_MAKE_MODEL(RIG_KENWOOD, 49)
182 #define RIG_MODEL_LAB599_TX500 RIG_MAKE_MODEL(RIG_KENWOOD,50)
183 
184 /*
185  * Icom
186  */
187 #define RIG_ICOM 3
188 #define RIG_BACKEND_ICOM "icom"
189 #define RIG_MODEL_IC1271 RIG_MAKE_MODEL(RIG_ICOM, 1)
190 #define RIG_MODEL_IC1275 RIG_MAKE_MODEL(RIG_ICOM, 2)
191 #define RIG_MODEL_IC271 RIG_MAKE_MODEL(RIG_ICOM, 3)
192 #define RIG_MODEL_IC275 RIG_MAKE_MODEL(RIG_ICOM, 4)
193 #define RIG_MODEL_IC375 RIG_MAKE_MODEL(RIG_ICOM, 5)
194 #define RIG_MODEL_IC471 RIG_MAKE_MODEL(RIG_ICOM, 6)
195 #define RIG_MODEL_IC475 RIG_MAKE_MODEL(RIG_ICOM, 7)
196 #define RIG_MODEL_IC575 RIG_MAKE_MODEL(RIG_ICOM, 8)
197 #define RIG_MODEL_IC706 RIG_MAKE_MODEL(RIG_ICOM, 9)
198 #define RIG_MODEL_IC706MKII RIG_MAKE_MODEL(RIG_ICOM, 10)
199 #define RIG_MODEL_IC706MKIIG RIG_MAKE_MODEL(RIG_ICOM, 11)
200 #define RIG_MODEL_IC707 RIG_MAKE_MODEL(RIG_ICOM, 12)
201 #define RIG_MODEL_IC718 RIG_MAKE_MODEL(RIG_ICOM, 13)
202 #define RIG_MODEL_IC725 RIG_MAKE_MODEL(RIG_ICOM, 14)
203 #define RIG_MODEL_IC726 RIG_MAKE_MODEL(RIG_ICOM, 15)
204 #define RIG_MODEL_IC728 RIG_MAKE_MODEL(RIG_ICOM, 16)
205 #define RIG_MODEL_IC729 RIG_MAKE_MODEL(RIG_ICOM, 17)
206 #define RIG_MODEL_IC731 RIG_MAKE_MODEL(RIG_ICOM, 18)
207 #define RIG_MODEL_IC735 RIG_MAKE_MODEL(RIG_ICOM, 19)
208 #define RIG_MODEL_IC736 RIG_MAKE_MODEL(RIG_ICOM, 20)
209 #define RIG_MODEL_IC737 RIG_MAKE_MODEL(RIG_ICOM, 21)
210 #define RIG_MODEL_IC738 RIG_MAKE_MODEL(RIG_ICOM, 22)
211 #define RIG_MODEL_IC746 RIG_MAKE_MODEL(RIG_ICOM, 23)
212 #define RIG_MODEL_IC751 RIG_MAKE_MODEL(RIG_ICOM, 24)
213 #define RIG_MODEL_IC751A RIG_MAKE_MODEL(RIG_ICOM, 25)
214 #define RIG_MODEL_IC756 RIG_MAKE_MODEL(RIG_ICOM, 26)
215 #define RIG_MODEL_IC756PRO RIG_MAKE_MODEL(RIG_ICOM, 27)
216 #define RIG_MODEL_IC761 RIG_MAKE_MODEL(RIG_ICOM, 28)
217 #define RIG_MODEL_IC765 RIG_MAKE_MODEL(RIG_ICOM, 29)
218 #define RIG_MODEL_IC775 RIG_MAKE_MODEL(RIG_ICOM, 30)
219 #define RIG_MODEL_IC781 RIG_MAKE_MODEL(RIG_ICOM, 31)
220 #define RIG_MODEL_IC820 RIG_MAKE_MODEL(RIG_ICOM, 32)
221 //#define RIG_MODEL_IC821 RIG_MAKE_MODEL(RIG_ICOM, 33) // not implemented and can be reused
222 #define RIG_MODEL_IC821H RIG_MAKE_MODEL(RIG_ICOM, 34)
223 #define RIG_MODEL_IC970 RIG_MAKE_MODEL(RIG_ICOM, 35)
224 #define RIG_MODEL_ICR10 RIG_MAKE_MODEL(RIG_ICOM, 36)
225 #define RIG_MODEL_ICR71 RIG_MAKE_MODEL(RIG_ICOM, 37)
226 #define RIG_MODEL_ICR72 RIG_MAKE_MODEL(RIG_ICOM, 38)
227 #define RIG_MODEL_ICR75 RIG_MAKE_MODEL(RIG_ICOM, 39)
228 #define RIG_MODEL_ICR7000 RIG_MAKE_MODEL(RIG_ICOM, 40)
229 #define RIG_MODEL_ICR7100 RIG_MAKE_MODEL(RIG_ICOM, 41)
230 #define RIG_MODEL_ICR8500 RIG_MAKE_MODEL(RIG_ICOM, 42)
231 #define RIG_MODEL_ICR9000 RIG_MAKE_MODEL(RIG_ICOM, 43)
232 #define RIG_MODEL_IC910 RIG_MAKE_MODEL(RIG_ICOM, 44)
233 #define RIG_MODEL_IC78 RIG_MAKE_MODEL(RIG_ICOM, 45)
234 #define RIG_MODEL_IC746PRO RIG_MAKE_MODEL(RIG_ICOM, 46)
235 #define RIG_MODEL_IC756PROII RIG_MAKE_MODEL(RIG_ICOM, 47) /* 48-53 defined below */
236 #define RIG_MODEL_ICID1 RIG_MAKE_MODEL(RIG_ICOM, 54)
237 #define RIG_MODEL_IC703 RIG_MAKE_MODEL(RIG_ICOM, 55)
238 #define RIG_MODEL_IC7800 RIG_MAKE_MODEL(RIG_ICOM, 56)
239 #define RIG_MODEL_IC756PROIII RIG_MAKE_MODEL(RIG_ICOM, 57)
240 #define RIG_MODEL_ICR20 RIG_MAKE_MODEL(RIG_ICOM, 58) /* 59 defined below */
241 #define RIG_MODEL_IC7000 RIG_MAKE_MODEL(RIG_ICOM, 60)
242 #define RIG_MODEL_IC7200 RIG_MAKE_MODEL(RIG_ICOM, 61)
243 #define RIG_MODEL_IC7700 RIG_MAKE_MODEL(RIG_ICOM, 62)
244 #define RIG_MODEL_IC7600 RIG_MAKE_MODEL(RIG_ICOM, 63) /* 64 defined below */
245 #define RIG_MODEL_IC92D RIG_MAKE_MODEL(RIG_ICOM, 65)
246 #define RIG_MODEL_ICR9500 RIG_MAKE_MODEL(RIG_ICOM, 66)
247 #define RIG_MODEL_IC7410 RIG_MAKE_MODEL(RIG_ICOM, 67)
248 #define RIG_MODEL_IC9100 RIG_MAKE_MODEL(RIG_ICOM, 68)
249 #define RIG_MODEL_ICRX7 RIG_MAKE_MODEL(RIG_ICOM, 69)
250 #define RIG_MODEL_IC7100 RIG_MAKE_MODEL(RIG_ICOM, 70)
251 #define RIG_MODEL_ID5100 RIG_MAKE_MODEL(RIG_ICOM, 71)
252 #define RIG_MODEL_IC2730 RIG_MAKE_MODEL(RIG_ICOM, 72)
253 #define RIG_MODEL_IC7300 RIG_MAKE_MODEL(RIG_ICOM, 73)
254 #define RIG_MODEL_PERSEUS RIG_MAKE_MODEL(RIG_ICOM, 74)
255 #define RIG_MODEL_IC785x RIG_MAKE_MODEL(RIG_ICOM, 75)
256 #define RIG_MODEL_X108G RIG_MAKE_MODEL(RIG_ICOM, 76) /* Xiegu X108 */
257 #define RIG_MODEL_ICR6 RIG_MAKE_MODEL(RIG_ICOM, 77)
258 #define RIG_MODEL_IC7610 RIG_MAKE_MODEL(RIG_ICOM, 78)
259 #define RIG_MODEL_ICR8600 RIG_MAKE_MODEL(RIG_ICOM, 79)
260 #define RIG_MODEL_ICR30 RIG_MAKE_MODEL(RIG_ICOM, 80)
261 #define RIG_MODEL_IC9700 RIG_MAKE_MODEL(RIG_ICOM, 81)
262 #define RIG_MODEL_ID4100 RIG_MAKE_MODEL(RIG_ICOM, 82)
263 #define RIG_MODEL_ID31 RIG_MAKE_MODEL(RIG_ICOM, 83)
264 #define RIG_MODEL_ID51 RIG_MAKE_MODEL(RIG_ICOM, 84)
265 #define RIG_MODEL_IC705 RIG_MAKE_MODEL(RIG_ICOM, 85)
266 #define RIG_MODEL_ICF8101 RIG_MAKE_MODEL(RIG_ICOM, 86)
267 #define RIG_MODEL_X6100 RIG_MAKE_MODEL(RIG_ICOM, 87) /* Xiegu X6100 */
268 #define RIG_MODEL_G90 RIG_MAKE_MODEL(RIG_ICOM, 88) /* Xiegu G90 */
269 
270 
271 /*
272  * Optoelectronics (CI-V)
273  */
274 #define RIG_MODEL_MINISCOUT RIG_MAKE_MODEL(RIG_ICOM, 48)
275 #define RIG_MODEL_XPLORER RIG_MAKE_MODEL(RIG_ICOM, 49)
276 #define RIG_MODEL_OS535 RIG_MAKE_MODEL(RIG_ICOM, 52)
277 #define RIG_MODEL_OS456 RIG_MAKE_MODEL(RIG_ICOM, 53)
278 
279 
280 /*
281  * TenTec (CI-V)
282  */
283 #define RIG_MODEL_OMNIVI RIG_MAKE_MODEL(RIG_ICOM, 50)
284 #define RIG_MODEL_OMNIVIP RIG_MAKE_MODEL(RIG_ICOM, 51) /* OMNI-VI+ */
285 #define RIG_MODEL_PARAGON2 RIG_MAKE_MODEL(RIG_ICOM, 59)
286 #define RIG_MODEL_DELTAII RIG_MAKE_MODEL(RIG_ICOM, 64)
287 
288 
289 /*
290  * Icom PCR
291  */
292 #define RIG_PCR 4
293 #define RIG_BACKEND_PCR "pcr"
294 #define RIG_MODEL_PCR1000 RIG_MAKE_MODEL(RIG_PCR, 1)
295 #define RIG_MODEL_PCR100 RIG_MAKE_MODEL(RIG_PCR, 2)
296 #define RIG_MODEL_PCR1500 RIG_MAKE_MODEL(RIG_PCR, 3)
297 #define RIG_MODEL_PCR2500 RIG_MAKE_MODEL(RIG_PCR, 4)
298 
299 
300 /*
301  * AOR
302  */
303 #define RIG_AOR 5
304 #define RIG_BACKEND_AOR "aor"
305 #define RIG_MODEL_AR8200 RIG_MAKE_MODEL(RIG_AOR, 1)
306 #define RIG_MODEL_AR8000 RIG_MAKE_MODEL(RIG_AOR, 2)
307 #define RIG_MODEL_AR7030 RIG_MAKE_MODEL(RIG_AOR, 3)
308 #define RIG_MODEL_AR5000 RIG_MAKE_MODEL(RIG_AOR, 4)
309 #define RIG_MODEL_AR3030 RIG_MAKE_MODEL(RIG_AOR, 5)
310 #define RIG_MODEL_AR3000A RIG_MAKE_MODEL(RIG_AOR, 6)
311 #define RIG_MODEL_AR3000 RIG_MAKE_MODEL(RIG_AOR, 7)
312 #define RIG_MODEL_AR2700 RIG_MAKE_MODEL(RIG_AOR, 8)
313 #define RIG_MODEL_AR2500 RIG_MAKE_MODEL(RIG_AOR, 9)
314 #define RIG_MODEL_AR16 RIG_MAKE_MODEL(RIG_AOR, 10)
315 #define RIG_MODEL_SDU5500 RIG_MAKE_MODEL(RIG_AOR, 11)
316 #define RIG_MODEL_SDU5000 RIG_MAKE_MODEL(RIG_AOR, 12)
317 #define RIG_MODEL_AR8600 RIG_MAKE_MODEL(RIG_AOR, 13)
318 #define RIG_MODEL_AR5000A RIG_MAKE_MODEL(RIG_AOR, 14)
319 #define RIG_MODEL_AR7030P RIG_MAKE_MODEL(RIG_AOR, 15)
320 #define RIG_MODEL_SR2200 RIG_MAKE_MODEL(RIG_AOR, 16)
321 
322 
323 /*
324  * JRC
325  */
326 #define RIG_JRC 6
327 #define RIG_BACKEND_JRC "jrc"
328 #define RIG_MODEL_JST145 RIG_MAKE_MODEL(RIG_JRC, 1)
329 #define RIG_MODEL_JST245 RIG_MAKE_MODEL(RIG_JRC, 2)
330 #define RIG_MODEL_CMH530 RIG_MAKE_MODEL(RIG_JRC, 3)
331 #define RIG_MODEL_NRD345 RIG_MAKE_MODEL(RIG_JRC, 4)
332 #define RIG_MODEL_NRD525 RIG_MAKE_MODEL(RIG_JRC, 5)
333 #define RIG_MODEL_NRD535 RIG_MAKE_MODEL(RIG_JRC, 6)
334 #define RIG_MODEL_NRD545 RIG_MAKE_MODEL(RIG_JRC, 7)
335 
336 
337 /*
338  * Radio Shack
339  * Actually, they might be either Icom or Uniden. TBC --SF
340  */
341 #define RIG_RADIOSHACK 7
342 #define RIG_BACKEND_RADIOSHACK "radioshack"
343 #define RIG_MODEL_RS64 RIG_MAKE_MODEL(RIG_RADIOSHACK, 1) /* PRO-64 */
344 #define RIG_MODEL_RS2005 RIG_MAKE_MODEL(RIG_RADIOSHACK, 2) /* w/ OptoElectronics OS456 Board */
345 #define RIG_MODEL_RS2006 RIG_MAKE_MODEL(RIG_RADIOSHACK, 3) /* w/ OptoElectronics OS456 Board */
346 #define RIG_MODEL_RS2035 RIG_MAKE_MODEL(RIG_RADIOSHACK, 4) /* w/ OptoElectronics OS435 Board */
347 #define RIG_MODEL_RS2042 RIG_MAKE_MODEL(RIG_RADIOSHACK, 5) /* w/ OptoElectronics OS435 Board */
348 #define RIG_MODEL_RS2041 RIG_MAKE_MODEL(RIG_RADIOSHACK, 6) /* PRO-2041 */
349 
350 
351 /*
352  * Uniden
353  */
354 #define RIG_UNIDEN 8
355 #define RIG_BACKEND_UNIDEN "uniden"
356 #define RIG_MODEL_BC780 RIG_MAKE_MODEL(RIG_UNIDEN, 1) /* Uniden BC780 - Trunk Tracker "Desktop Radio" */
357 #define RIG_MODEL_BC245 RIG_MAKE_MODEL(RIG_UNIDEN, 2)
358 #define RIG_MODEL_BC895 RIG_MAKE_MODEL(RIG_UNIDEN, 3)
359 #define RIG_MODEL_PRO2052 RIG_MAKE_MODEL(RIG_UNIDEN, 4) /* Radio Shack PRO-2052 */
360 #define RIG_MODEL_BC235 RIG_MAKE_MODEL(RIG_UNIDEN, 5)
361 #define RIG_MODEL_BC250 RIG_MAKE_MODEL(RIG_UNIDEN, 6)
362 #define RIG_MODEL_BC785 RIG_MAKE_MODEL(RIG_UNIDEN, 7)
363 #define RIG_MODEL_BC786 RIG_MAKE_MODEL(RIG_UNIDEN, 8)
364 #define RIG_MODEL_BCT8 RIG_MAKE_MODEL(RIG_UNIDEN, 9)
365 #define RIG_MODEL_BCD396T RIG_MAKE_MODEL(RIG_UNIDEN, 10)
366 #define RIG_MODEL_BCD996T RIG_MAKE_MODEL(RIG_UNIDEN, 11)
367 #define RIG_MODEL_BC898 RIG_MAKE_MODEL(RIG_UNIDEN, 12)
368 
369 
370 /*
371  * Drake
372  */
373 #define RIG_DRAKE 9
374 #define RIG_BACKEND_DRAKE "drake"
375 #define RIG_MODEL_DKR8 RIG_MAKE_MODEL(RIG_DRAKE, 1)
376 #define RIG_MODEL_DKR8A RIG_MAKE_MODEL(RIG_DRAKE, 2)
377 #define RIG_MODEL_DKR8B RIG_MAKE_MODEL(RIG_DRAKE, 3)
378 
379 
380 /*
381  * Lowe
382  */
383 #define RIG_LOWE 10
384 #define RIG_BACKEND_LOWE "lowe"
385 #define RIG_MODEL_HF150 RIG_MAKE_MODEL(RIG_LOWE, 1)
386 #define RIG_MODEL_HF225 RIG_MAKE_MODEL(RIG_LOWE, 2)
387 #define RIG_MODEL_HF250 RIG_MAKE_MODEL(RIG_LOWE, 3)
388 #define RIG_MODEL_HF235 RIG_MAKE_MODEL(RIG_LOWE, 4)
389 
390 
391 /*
392  * Racal
393  */
394 #define RIG_RACAL 11
395 #define RIG_BACKEND_RACAL "racal"
396 #define RIG_MODEL_RA3790 RIG_MAKE_MODEL(RIG_RACAL, 1)
397 #define RIG_MODEL_RA3720 RIG_MAKE_MODEL(RIG_RACAL, 2)
398 #define RIG_MODEL_RA6790 RIG_MAKE_MODEL(RIG_RACAL, 3)
399 #define RIG_MODEL_RA3710 RIG_MAKE_MODEL(RIG_RACAL, 4)
400 #define RIG_MODEL_RA3702 RIG_MAKE_MODEL(RIG_RACAL, 5)
401 
402 
403 /*
404  * Watkins-Johnson
405  */
406 #define RIG_WJ 12
407 #define RIG_BACKEND_WJ "wj"
408 #define RIG_MODEL_HF1000 RIG_MAKE_MODEL(RIG_WJ, 1)
409 #define RIG_MODEL_HF1000A RIG_MAKE_MODEL(RIG_WJ, 2)
410 #define RIG_MODEL_WJ8711 RIG_MAKE_MODEL(RIG_WJ, 3)
411 #define RIG_MODEL_WJ8888 RIG_MAKE_MODEL(RIG_WJ, 4)
412 
413 
414 /*
415  * Rohde & Schwarz--ek
416  */
417 #define RIG_EK 13
418 #define RIG_BACKEND_EK "ek"
419 #define RIG_MODEL_ESM500 RIG_MAKE_MODEL(RIG_EK, 1)
420 #define RIG_MODEL_EK890 RIG_MAKE_MODEL(RIG_EK, 2)
421 #define RIG_MODEL_EK891 RIG_MAKE_MODEL(RIG_EK, 3)
422 #define RIG_MODEL_EK895 RIG_MAKE_MODEL(RIG_EK, 4)
423 #define RIG_MODEL_EK070 RIG_MAKE_MODEL(RIG_EK, 5)
424 
425 
426 /*
427  * Skanti
428  */
429 #define RIG_SKANTI 14
430 #define RIG_BACKEND_SKANTI "skanti"
431 #define RIG_MODEL_TRP7000 RIG_MAKE_MODEL(RIG_SKANTI, 1)
432 #define RIG_MODEL_TRP8000 RIG_MAKE_MODEL(RIG_SKANTI, 2)
433 #define RIG_MODEL_TRP9000 RIG_MAKE_MODEL(RIG_SKANTI, 3)
434 #define RIG_MODEL_TRP8255 RIG_MAKE_MODEL(RIG_SKANTI, 4)
435 
436 
437 /*
438  * WiNRADiO/LinRADiO
439  */
440 #define RIG_WINRADIO 15
441 #define RIG_BACKEND_WINRADIO "winradio"
442 #define RIG_MODEL_WR1000 RIG_MAKE_MODEL(RIG_WINRADIO, 1)
443 #define RIG_MODEL_WR1500 RIG_MAKE_MODEL(RIG_WINRADIO, 2)
444 #define RIG_MODEL_WR1550 RIG_MAKE_MODEL(RIG_WINRADIO, 3)
445 #define RIG_MODEL_WR3100 RIG_MAKE_MODEL(RIG_WINRADIO, 4)
446 #define RIG_MODEL_WR3150 RIG_MAKE_MODEL(RIG_WINRADIO, 5)
447 #define RIG_MODEL_WR3500 RIG_MAKE_MODEL(RIG_WINRADIO, 6)
448 #define RIG_MODEL_WR3700 RIG_MAKE_MODEL(RIG_WINRADIO, 7)
449 #define RIG_MODEL_G303 RIG_MAKE_MODEL(RIG_WINRADIO, 8)
450 #define RIG_MODEL_G313 RIG_MAKE_MODEL(RIG_WINRADIO, 9)
451 #define RIG_MODEL_G305 RIG_MAKE_MODEL(RIG_WINRADIO, 10)
452 #define RIG_MODEL_G315 RIG_MAKE_MODEL(RIG_WINRADIO, 11)
453 
454 
455 /*
456  * Ten Tec
457  */
458 #define RIG_TENTEC 16
459 #define RIG_BACKEND_TENTEC "tentec"
460 #define RIG_MODEL_TT550 RIG_MAKE_MODEL(RIG_TENTEC, 1) /* Pegasus */
461 #define RIG_MODEL_TT538 RIG_MAKE_MODEL(RIG_TENTEC, 2) /* Jupiter */
462 #define RIG_MODEL_RX320 RIG_MAKE_MODEL(RIG_TENTEC, 3)
463 #define RIG_MODEL_RX340 RIG_MAKE_MODEL(RIG_TENTEC, 4)
464 #define RIG_MODEL_RX350 RIG_MAKE_MODEL(RIG_TENTEC, 5)
465 #define RIG_MODEL_TT526 RIG_MAKE_MODEL(RIG_TENTEC, 6) /* 6N2 */
466 #define RIG_MODEL_TT516 RIG_MAKE_MODEL(RIG_TENTEC, 7) /* Argonaut V */
467 #define RIG_MODEL_TT565 RIG_MAKE_MODEL(RIG_TENTEC, 8) /* Orion */
468 #define RIG_MODEL_TT585 RIG_MAKE_MODEL(RIG_TENTEC, 9) /* Paragon */
469 #define RIG_MODEL_TT588 RIG_MAKE_MODEL(RIG_TENTEC, 11) /* Omni-VII */
470 #define RIG_MODEL_RX331 RIG_MAKE_MODEL(RIG_TENTEC, 12)
471 #define RIG_MODEL_TT599 RIG_MAKE_MODEL(RIG_TENTEC, 13) /* Eagle */
472 
473 
474 /*
475  * Alinco
476  */
477 #define RIG_ALINCO 17
478 #define RIG_BACKEND_ALINCO "alinco"
479 #define RIG_MODEL_DX77 RIG_MAKE_MODEL(RIG_ALINCO, 1)
480 #define RIG_MODEL_DXSR8 RIG_MAKE_MODEL(RIG_ALINCO, 2)
481 
482 
483 /*
484  * Kachina
485  */
486 #define RIG_KACHINA 18
487 #define RIG_BACKEND_KACHINA "kachina"
488 #define RIG_MODEL_505DSP RIG_MAKE_MODEL(RIG_KACHINA, 1)
489 
490 
491 /*
492  * Gnuradio backend
493  */
494 #define RIG_GNURADIO 20
495 #define RIG_BACKEND_GNURADIO "gnuradio"
496 #define RIG_MODEL_GNURADIO RIG_MAKE_MODEL(RIG_GNURADIO, 1) /* dev model, Chirp source */
497 #define RIG_MODEL_MC4020 RIG_MAKE_MODEL(RIG_GNURADIO, 2) /* MC4020 */
498 #define RIG_MODEL_GRAUDIO RIG_MAKE_MODEL(RIG_GNURADIO, 3) /* Sound card source */
499 #define RIG_MODEL_GRAUDIOIQ RIG_MAKE_MODEL(RIG_GNURADIO, 4) /* I&Q stereo sound card source */
500 #define RIG_MODEL_USRP_G RIG_MAKE_MODEL(RIG_GNURADIO, 5) /* Universal Software Radio Peripheral */
501 
502 
503 /*
504  * Microtune tuners
505  */
506 #define RIG_MICROTUNE 21
507 #define RIG_BACKEND_MICROTUNE "microtune"
508 #define RIG_MODEL_MICROTUNE_4937 RIG_MAKE_MODEL(RIG_MICROTUNE, 1) /* eval board */
509 #define RIG_MODEL_MICROTUNE_4702 RIG_MAKE_MODEL(RIG_MICROTUNE, 2) /* Alan's */
510 #define RIG_MODEL_MICROTUNE_4707 RIG_MAKE_MODEL(RIG_MICROTUNE, 3)
511 
512 
513 /*
514  * TAPR
515  */
516 #define RIG_TAPR 22
517 #define RIG_BACKEND_TAPR "tapr"
518 #define RIG_MODEL_DSP10 RIG_MAKE_MODEL(RIG_TAPR, 1)
519 
520 
521 /*
522  * Flex-radio
523  */
524 #define RIG_FLEXRADIO 23
525 #define RIG_BACKEND_FLEXRADIO "flexradio"
526 #define RIG_MODEL_SDR1000 RIG_MAKE_MODEL(RIG_FLEXRADIO, 1)
527 #define RIG_MODEL_SDR1000RFE RIG_MAKE_MODEL(RIG_FLEXRADIO, 2)
528 #define RIG_MODEL_DTTSP RIG_MAKE_MODEL(RIG_FLEXRADIO, 3)
529 #define RIG_MODEL_DTTSP_UDP RIG_MAKE_MODEL(RIG_FLEXRADIO, 4)
530 
531 
532 /*
533  * VEB Funkwerk Köpenick RFT
534  */
535 #define RIG_RFT 24
536 #define RIG_BACKEND_RFT "rft"
537 #define RIG_MODEL_EKD500 RIG_MAKE_MODEL(RIG_RFT, 1)
538 
539 
540 /*
541  * Various kits
542  */
543 #define RIG_KIT 25
544 #define RIG_BACKEND_KIT "kit"
545 #define RIG_MODEL_ELEKTOR304 RIG_MAKE_MODEL(RIG_KIT, 1)
546 #define RIG_MODEL_DRT1 RIG_MAKE_MODEL(RIG_KIT, 2)
547 #define RIG_MODEL_DWT RIG_MAKE_MODEL(RIG_KIT, 3)
548 #define RIG_MODEL_USRP0 RIG_MAKE_MODEL(RIG_KIT, 4) /* prototype */
549 #define RIG_MODEL_USRP RIG_MAKE_MODEL(RIG_KIT, 5)
550 #define RIG_MODEL_DDS60 RIG_MAKE_MODEL(RIG_KIT, 6)
551 #define RIG_MODEL_ELEKTOR507 RIG_MAKE_MODEL(RIG_KIT, 7) /* Elektor SDR USB */
552 #define RIG_MODEL_MINIVNA RIG_MAKE_MODEL(RIG_KIT, 8)
553 #define RIG_MODEL_SI570AVRUSB RIG_MAKE_MODEL(RIG_KIT, 9) /* SoftRock Si570 AVR */
554 #define RIG_MODEL_PMSDR RIG_MAKE_MODEL(RIG_KIT, 10)
555 #define RIG_MODEL_SI570PICUSB RIG_MAKE_MODEL(RIG_KIT, 11) /* SoftRock Si570 PIC */
556 #define RIG_MODEL_FIFISDR RIG_MAKE_MODEL(RIG_KIT, 12) /* FiFi-SDR USB */
557 #define RIG_MODEL_FUNCUBEDONGLE RIG_MAKE_MODEL(RIG_KIT, 13) /* FunCUBE Dongle */
558 #define RIG_MODEL_HIQSDR RIG_MAKE_MODEL(RIG_KIT, 14) /* HiQSDR */
559 #define RIG_MODEL_FASDR RIG_MAKE_MODEL(RIG_KIT,15) /* Funkamateur Sdr */
560 #define RIG_MODEL_SI570PEABERRY1 RIG_MAKE_MODEL(RIG_KIT, 16) /* Peaberry V1 */
561 #define RIG_MODEL_SI570PEABERRY2 RIG_MAKE_MODEL(RIG_KIT, 17) /* Peaberry V2 */
562 #define RIG_MODEL_FUNCUBEDONGLEPLUS RIG_MAKE_MODEL(RIG_KIT, 18) /* FunCUBE Dongle Pro+ */
563 #define RIG_MODEL_RSHFIQ RIG_MAKE_MODEL(RIG_KIT, 19) /* RS-HFIQ */
564 
565 
566 /*
567  * SW/FM/TV tuner cards supported by Video4Linux,*BSD, ..
568  */
569 #define RIG_TUNER 26
570 #define RIG_BACKEND_TUNER "tuner"
571 #define RIG_MODEL_V4L RIG_MAKE_MODEL(RIG_TUNER, 1)
572 #define RIG_MODEL_V4L2 RIG_MAKE_MODEL(RIG_TUNER, 2)
573 
574 
575 /*
576  * Rohde & Schwarz--rs
577  */
578 #define RIG_RS 27
579 #define RIG_BACKEND_RS "rs"
580 #define RIG_MODEL_ESMC RIG_MAKE_MODEL(RIG_RS, 1)
581 #define RIG_MODEL_EB200 RIG_MAKE_MODEL(RIG_RS, 2)
582 #define RIG_MODEL_XK2100 RIG_MAKE_MODEL(RIG_RS, 3)
583 
584 
585 /*
586  * Phillips/Simoco PRM80
587  */
588 #define RIG_PRM80 28
589 #define RIG_BACKEND_PRM80 "prm80"
590 #define RIG_MODEL_PRM8060 RIG_MAKE_MODEL(RIG_PRM80, 1)
591 #define RIG_MODEL_PRM8070 RIG_MAKE_MODEL(RIG_PRM80, 2)
592 
593 
594 /*
595  * ADAT by HB9CBU
596  *
597  * ADDED: frgo (DG1SBG), 2012-01-01
598  */
599 #define RIG_ADAT 29
600 #define RIG_BACKEND_ADAT "adat"
601 #define RIG_MODEL_ADT_200A RIG_MAKE_MODEL(RIG_ADAT, 1)
602 
603 
604 /*
605  * ICOM Marine
606  */
607 #define RIG_ICMARINE 30
608 #define RIG_BACKEND_ICMARINE "icmarine"
609 #define RIG_MODEL_IC_M700PRO RIG_MAKE_MODEL(RIG_ICMARINE, 1)
610 #define RIG_MODEL_IC_M802 RIG_MAKE_MODEL(RIG_ICMARINE, 2)
611 #define RIG_MODEL_IC_M710 RIG_MAKE_MODEL(RIG_ICMARINE, 3)
612 #define RIG_MODEL_IC_M803 RIG_MAKE_MODEL(RIG_ICMARINE, 4)
613 
614 
615 /*
616  * Dorji transceiver modules
617  */
618 #define RIG_DORJI 31
619 #define RIG_BACKEND_DORJI "dorji"
620 #define RIG_MODEL_DORJI_DRA818V RIG_MAKE_MODEL(RIG_DORJI, 1)
621 #define RIG_MODEL_DORJI_DRA818U RIG_MAKE_MODEL(RIG_DORJI, 2)
622 
623 /*
624  * Barrett
625  */
626 #define RIG_BARRETT 32
627 #define RIG_BACKEND_BARRETT "barrett"
628 #define RIG_MODEL_BARRETT_2050 RIG_MAKE_MODEL(RIG_BARRETT, 1)
629 #define RIG_MODEL_BARRETT_950 RIG_MAKE_MODEL(RIG_BARRETT, 2)
630 #define RIG_MODEL_BARRETT_4050 RIG_MAKE_MODEL(RIG_BARRETT, 3)
631 
632 /*
633  * Elad
634  */
635 #define RIG_ELAD 33
636 #define RIG_BACKEND_ELAD "elad"
637 #define RIG_MODEL_ELAD_FDM_DUO RIG_MAKE_MODEL(RIG_ELAD, 1)
638 
639 /*
640  * CODAN
641  */
642 #define RIG_CODAN 34
643 #define RIG_BACKEND_CODAN "codan"
644 #define RIG_MODEL_CODAN_ENVOY RIG_MAKE_MODEL(RIG_CODAN, 1)
645 #define RIG_MODEL_CODAN_NGT RIG_MAKE_MODEL(RIG_CODAN, 2)
647 
648 /*
649  * TODO:
650  RIG_MODEL_KWZ30, KNEISNER +DOERING
651  RIG_MODEL_E1800, DASA-Telefunken
652  etc.
653 */
654 
655 
659 typedef uint32_t rig_model_t;
660 
661 
662 /*
663  * struct rig_backend_list {
664  * rig_model_t model;
665  * const char *backend;
666  * } rig_backend_list[] = RIG_LIST;
667  *
668  * TODO:
669  *
670  { RIG_RADIOSHACK, RIG_BACKEND_RADIOSHACK }, \
671  */
672 
673 #endif /* _RIGLIST_H */